package cn.factorybox.item.mapper;

import cn.factorybox.entity.UserInfo;
import cn.factorybox.model.entity.User;
import cn.factorybox.model.entity.UserUpdate;

import java.util.LinkedHashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;

/**
 * @author flypig
 * @version 1.0
 * @date 2020-03-28 11:18
 */
public interface UserMapper {
    int insertUser(User user);

    User selectUser(User record);

    int deleteUser(String id);

    int updateUser(User user);

    int selectAdminUserCount();

    List<Map<String, Object>> selectList();

    User selectUserById(String id);

    LinkedHashSet<String> selectAllSubUser(String companyId);

    List<User> selectSubUserList(String companyId);

    int deleteSubUser(String id);

    List<User> selectAllMaster();

    User getMasterBelong(String companyId);

    Boolean checkUserName(String username);

    List<User> selectAllMasterForManagerHomeState();

}
